첨단 기술 ≠ 마법, 기초 과학의 영리한 조합
자율주행차의 LIDAR? 빛의 직진과 반사(중학 광학)다. 스마트워치의 심박 측정? 혈액이 빛을 흡수하는 광학 원리. 드론의 비행? 뉴턴 운동법칙. AI 음성인식? 주파수 분석(푸리에).
이 프로젝트에서는 마이크로컨트롤러(MCU)와 6가지 센서로 4가지 첨단 기술의 작동 원리를 직접 체험한다. "이 기술 안에 어떤 과학이 숨어 있나?"를 묻고 답하는 시간.
탐구할 첨단 기술 4가지 — DISCOVER
아래 4개 첨단 기술 중 모둠별로 1~2개를 선택해 MCU로 그 핵심 원리를 직접 구현한다.
자율주행 (LIDAR)
레이저를 쏘고 돌아오는 시간으로 거리 측정. HC-SR04 초음파 센서로 같은 원리 구현 가능.
스마트워치 (심박)
녹색 LED + 광센서. 혈관 부피 변화로 심박 검출. MAX30100 센서로 구현.
IoT 환경 감지
스마트홈·스마트팜의 기초. DHT22·BMP280으로 직접 체험.
AI 음성인식 (FFT)
마이크로 소리를 캡처 → 푸리에 변환 → 주파수 패턴. MAX4466 + FFT 라이브러리.
마이크로컨트롤러란 — DESIGN
MCU는 한 칩 안에 CPU + 메모리 + 입출력 핀이 모두 들어 있는 작은 컴퓨터다. 일상의 거의 모든 전자기기에 들어 있다 — 세탁기·전자레인지·자동차·신호등·드론·로켓.
🔌 Arduino UNO
메모리: 2KB RAM, 32KB Flash
핀: 14 디지털 + 6 아날로그
언어: C/C++ (Arduino IDE)
가격: 15,000원
실시간 단순 제어에 강함. 1ms 단위 정확한 타이밍. 학습용·센서 데이터 수집·로봇 제어에 적합.
🥧 Raspberry Pi 4
메모리: 2~8GB RAM
OS: Linux (Raspbian)
언어: Python·Java·Web 등 자유
가격: 75,000원
완전한 컴퓨터. AI·영상 처리·웹 서버 가능. 카메라·OS 필요한 프로젝트에 적합.
💡 선택 기준: 단순 센서 측정 → 아두이노. 복잡한 처리·AI·영상 → 라즈베리파이. 이번 프로젝트는 아두이노로 충분.
📡 사용할 6가지 센서
센서 원리 매트릭스
| 센서 | 측정 대상 | 출력 신호 | 기초 과학 원리 |
|---|---|---|---|
| 📏 HC-SR04 초음파 | 거리 | 디지털 (시간) | 음속 340m/s · 거리=속도×시간÷2 |
| 💡 LDR (광센서) | 밝기 | 아날로그 (저항) | 반도체 광전 효과 |
| 🌡️ DHT22 | 온·습도 | 디지털 (펄스) | 정전용량 변화 |
| 🎤 MAX4466 | 소리 | 아날로그 (전압) | 압전 효과·진동→전기 |
| 🧭 MPU6050 | 가속도·각속도 | I2C (디지털) | MEMS 기계 변위→전기 |
| 🔵 BMP280 | 기압·고도 | I2C | 압력 → 다이어프램 변형 |
코드와 회로 — DO
대표 예시로 HC-SR04 초음파 센서를 사용해 자율주행 LIDAR의 원리를 구현해 본다.
🔬 원리 — 자율주행 LIDAR의 축소판
① 송신기에서 초음파(40kHz) 발사 → ② 물체에 부딪혀 반사 → ③ 수신기가 받음 → ④ 왕복 시간 측정 → ⑤ 거리 = (속도 × 시간) ÷ 2
💻 핵심 코드 (Arduino C++)
const int trigPin = 9; // 송신 핀
const int echoPin = 10; // 수신 핀
void setup() {
Serial.begin(9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}
void loop() {
// 1. 10μs 펄스 발사
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// 2. 반사 신호 도착 시간 측정
long duration = pulseIn(echoPin, HIGH);
// 3. 거리 계산: 음속 340m/s = 0.034cm/μs, ÷2 (왕복)
float distance = duration * 0.034 / 2;
Serial.print("거리: ");
Serial.print(distance);
Serial.println(" cm");
delay(100); // 10Hz 측정
}
이 코드를 작성·업로드한 후 시리얼 모니터를 열면 실시간 거리값이 표시된다. 손바닥을 센서 앞에서 움직이면 값이 변한다 — 자율주행차가 보는 세상과 같다.
실시간 데이터 시각화 — DELIVER
측정만으로는 부족하다. 데이터를 시각화하여 패턴을 발견하고 다른 사람에게 전달한다.
📊 실시간 데이터 시뮬레이션 — 4가지 센서
실험 활동 — 모둠별 진행
- 모둠별로 4가지 첨단 기술 중 하나를 선택한다 (자율주행·심박·IoT·음성인식).
- 해당 기술의 핵심 과학 원리를 조사하고 1쪽으로 정리한다. (위키·논문·유튜브 강의 참조)
- 해당 원리를 구현하기 위한 아두이노 + 센서 조합을 결정한다.
- 회로를 브레드보드에 연결하고 코드를 작성·업로드한다.
- 측정값을 시리얼 모니터로 확인하고, Excel/Python으로 실시간 그래프를 그린다.
- 다양한 상황에서 측정 데이터를 비교한다 (조용한 환경 vs 시끄러운 환경, 등).
- 측정 데이터로부터 첨단 기술이 어떻게 의사결정을 하는지 추론한다 (예: 자율주행차는 어떻게 멈출지 결정하는가?).
- 발표 자료 작성: ① 원리 ② 코드·회로 ③ 측정 결과 ④ 실제 적용 사례
📍 이 프로젝트에서 배우는 것
① 첨단 기술 = 기초 과학의 영리한 조합. 마법이 아니라 이미 배운 원리들의 결합.
② 측정의 정확성. 음속·빛속 같은 기초 상수가 정확해야 첨단 기술이 작동한다.
③ 코드로 실험. 아두이노 코드 한 줄이 진짜 측정을 가능하게 한다.
④ 시각화의 힘. 숫자만 보면 의미가 없다. 그래프로 봐야 패턴이 보인다.
📌 함께 생각해 보기
스마트폰 하나에는 10여 개의 센서(가속도·자이로·자기·근접·조도·기압·온도·지문·카메라·마이크·GPS)가 들어 있다. 우리는 매일 무심코 그것들을 사용한다. 다음번 스마트폰을 쓸 때, 그 안에 어떤 과학이 작동하고 있는지 한 번 떠올려 보라.
여러분이 만든 측정기에 한 가지 기능을 더 추가한다면 무엇이고, 왜 그것이 의미 있을까요? 다음 프로젝트(PRJ 05)에서 직접 시제품을 만들 준비를 시작해 보세요.